#!/bin/bash

## 环境配置
HADOOP_HOME=/opt/apps/hadoop
HIVE_HOME=/opt/apps/hive
DATAX_HOME=/opt/apps/datax


## 获取当前日期和前一天
target_dt=$(date -d'-1 day' +'%Y-%m-%d')
cur_dt=$(date +'%Y-%m-%d')

if [ $1 ]
then
  target_dt=$1
  cur_dt=$(date -d"$1 +1 day" +'%Y-%m-%d')
fi

echo "要同步的目标日期是: $target_dt ,截止日是: $cur_dt"


# 判断目标表分区是否存在
flag=$(${HADOOP_HOME}/bin/hdfs dfs -ls /user/hive/warehouse/ods.db/ums_member | grep $target_dt | wc -l)
if [ $flag -eq 0 ]
then
echo "目标分区:$target_dt 不存在，将创建"
${HIVE_HOME}/bin/hive -e "alter table ods.ums_member add partition(dt='$target_dt')"
fi

# 启动同步作业
echo "即将启动同步作业job"
python ${DATAX_HOME}/bin/datax.py -p"-Ddt_start='$target_dt 00:00:00' -Ddt_end='$cur_dt 00:00:00' -Dpartition_dt='$target_dt'" ${DATAX_HOME}/ums_memeber.json

if [ $? -ne 0 ]
then
  echo "警报！警报!! 作业失败，请检查，请干预!!!"
else
  echo "congratulations!! 同步作业成功!!"
fi


